package com.clstu.regexp;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 字符匹配符的使用 + 选择匹配符|的使用
 */
public class RegExp01 {
    public static void main(String[] args) {
        String content = "abc11@c8_ abcxyzABC_# along 阿龙 阿隆";
//        String regStr = "[a-z]";//a-z之间的任意一个字符,区分大小写
//        String regStr = "[A-Z]";//A-Z之间的任意一个字符,区分大小写
//        String regStr = "[abc]";//abc之间的任意一个字符,区分大小写
//        String regStr = "abc";//abc字符串,区分大小写
//        String regStr = "(?i)abc";//abc字符串,不区分大小写(在字符串前面加上(?i)表示不区分大小写)
//        String regStr = "[0-9]";//0-9之间的任意一个字符
//        String regStr = "[^0-9]";//0-9之外的任意一个字符
//        String regStr = "[^a-z]";//a-z之外的任意一个字符(加上^表示在这个范围之外)
//        String regStr = "\\D";//0-9之外的任意一个字符跟[^0-9]一样
//        String regStr = "\\d";//0-9之内的任意一个字符跟[0-9]一样(\\大写和小写的范围通常相反)
//        String regStr = "\\w";//表示[0-9a-zA-Z_]的任意一个字符(数字,大小写字母,下划线)
//        String regStr = "\\W";//表示[0-9a-zA-Z_](数字,大小写字母,下划线)之外的任意一个字符
//        String regStr = "\\s";//任何的空白字符,空格,制表符..等等(tab倍当做4个空格看待)
//        String regStr = "\\S";//任何的空白字符,空格,制表符..之外的字符
//        String regStr = ".";//匹配\n之外的所有字符,包括空格,空白字符
        String regStr = "along|阿龙|阿隆";//匹配along,阿龙,阿三个字符串中的任意一个(|表示选择匹配符,或者的意思)

        Pattern pattern = Pattern.compile(regStr);
        Matcher matcher = pattern.matcher(content);
        int i=0;
        while (matcher.find()){
            System.out.println("找到 "+matcher.group(0));
            i++;
        }
        System.out.println("length="+content.length());
        System.out.println("i="+i);
    }
}
